package com.tjbklx1.pattern.specification.demo3;

import java.util.ArrayList;
import java.util.List;

/**
 * 用户操作实现类
 * @author tjbklx1
 * @date 2018-10-9
 */
public class UserProvider implements IUserProvider {
	// 用户列表
	private ArrayList<User> userList;

	// 传递用户列表
	public UserProvider(ArrayList<User> _userList) {
		this.userList = _userList;
	}

	// 根据指定的规格书查找用户
	public List<User> findUser(IUserSpecification userSpec) {
		ArrayList<User> result = new ArrayList<User>();
		for (User u : userList) {
			if (userSpec.isSatisfiedBy(u)) {// 符合指定规格
				result.add(u);
			}
		}
		return result;
	}
}
